# -*- coding: utf-8 -*-
from PyQt4 import QtGui
from Bauteilkiste.UIClasses.UIInputDialog import UIInputDialog

class UITaktgeneratoren(UIInputDialog):    
    def __init__(self, parent=None):
        ###############################################
        ######Konsruktoren aufrufe#####################
        ###############################################
        #QtGui.QDialog.__init__(self, parent)
        UIInputDialog.__init__(self, parent)
        self.tableName = "Taktgeneratororen"

        ###############################################
        #####Elemente erzeugen#########################
        ###############################################

        self.inputs.clear()
        labels = {}
        for l in ["Frequenz", "Typ"]:
            labels[l] = QtGui.QLabel(l)

        self.inputs["Frequenz"]     = QtGui.QLineEdit()
        self.inputs["Typ"]          = QtGui.QComboBox()
        self.inputs["Einheit"]      = QtGui.QComboBox()

        for l in ["Quarz", "Oszillator"]:
            self.inputs["Typ"].addItem(l)

        for l in ["Mhz", "kHz", "Hz"]:
            self.inputs["Einheit"].addItem(l)

        
        ################################################
        #####Eigenschaften / Events#####################
        ################################################

        self.inputs["Typ"].setEditable(True)
        self.inputs["Einheit"].setEditable(True)
        
        self.inputs["Frequenz"].editingFinished.connect(self.checkNumber)
        self.numberFields.append("Frequenz")
        
        self.setWindowTitle("Taktgenerator hinzufügen")

        #############################################
        ######Anordnen###############################
        #############################################

        mainVBox    = QtGui.QVBoxLayout()
        topGrid     = QtGui.QGridLayout()
        buttonBox   = QtGui.QHBoxLayout()
        wertHBox    = QtGui.QHBoxLayout()

        wertHBox.addWidget(self.inputs["Frequenz"])
        wertHBox.addWidget(self.inputs["Einheit"])

        topGrid.addWidget(labels["Frequenz"],      0, 0)
        topGrid.addLayout(wertHBox,                0, 1)
        topGrid.addWidget(labels["Typ"],           1, 0)
        topGrid.addWidget(self.inputs["Typ"],      1, 1)

        buttonBox.addWidget(self.buttonAccept)
        buttonBox.addWidget(self.buttonReject)

        mainVBox.addLayout(topGrid)
        mainVBox.addWidget(self.lagerinformationen)
        mainVBox.addLayout(buttonBox)

        self.setLayout(mainVBox)

